package com.taxis.action;

import java.util.Iterator;
import java.util.List;

import com.taxis.model.Usuario;
import java.util.*;
import com.taxis.service.UsuarioDaoService;
import com.opensymphony.xwork2.*;

@SuppressWarnings("serial")
public class UsuarioAction extends ActionSupport {

	private UsuarioDaoService usuarioService = new UsuarioDaoService();
	private Usuario usuario;
	private List<Usuario> usuarios;

	public Usuario getUsuario() {
		return usuario;
	}

	public void setUsuario(Usuario usuario) {
		this.usuario = usuario;
	}

	public List<Usuario> getUsuarios() {
		return usuarios;
	}

	public String save() throws Exception {
		if (usuario.getIdUsuario() == null) {
			List<Usuario> u = usuarioService.getAllUsuarios();
			Iterator<Usuario> i = u.iterator();
			boolean same = false;
			while (i.hasNext()){
				if(i.next().getUsuario().equals(usuario.getUsuario())){
					same = true;
					break;
				}

			}
			if(same){
				return ERROR;
			}
			else{
				usuarioService.insertUsuario(usuario);
			}
		} else {
			usuarioService.updateUsuario(usuario);
		}
		return SUCCESS;
	}

	public String view() throws Exception{
		usuarios = usuarioService.getAllUsuarios();
		return SUCCESS;
	}

	public String edit() throws Exception{
		usuario = usuarioService.getUsuario(usuario.getIdUsuario());
		return SUCCESS;
	}

	public String delete() throws Exception {
		usuarioService.deleteUsuario(usuario.getIdUsuario());
		return SUCCESS;
	}

}